#pragma once

#define CGE_FUNCTION (__FUNCTION__)
#define CGE_STUB(l)  (l) << "WARNING: " << CGE_FUNCTION << " is a stub.\n"
#define CGE_TRACE(l,v) (l) << "In " << CGE_FUNCTION << ", " << (#v) << " = " << v << '\n';
#define CGE_WUZHERE(l) (l) << "Line " << __LINE__ << " in " << CGE_FUNCTION << " reached.\n";
#define CGE_ASSERT(c) assert(c)
#define CGE_UNIMPLEMENTED() assert( "UNIMPLEMENTED" == 0 )

#include <iostream>
#include <cassert>

namespace cge {
	void debugCube( double width );
	void debugBillboard( double width );
}